Interactive project progress tracking interface

ABSTRACT

Computer systems and methods are provided for updating a task component status. A first graphical user interface is displayed. The first graphical user interface includes a first task completion control with indicia of a first time range that corresponds to a first task, where the first task includes a first plurality of task components, indicia that correspond to at least one completed task component of the first plurality of task components, and indicia that correspond to at least one uncompleted task component of the first plurality of task components. A first input is detected, at a location that corresponds to the first task completion control. In response to detecting the first input, at least one operation is performed to change a status of a respective uncompleted task component. The first graphical user interface is updated using the changed status of the respective uncompleted task component.

RELATED APPLICATIONS

This application is a non-provisional application of and claims priorityto U.S. Provisional Patent Application No. 62/266,529, filed Dec. 11,2015, entitled, “Milestone Tracker UI Gadget,” which is herebyincorporated by reference in its entirety.

TECHNICAL FIELD

This application relates generally to project management systems, andmore particularly, to systems that display interactive project trackinginformation.

BACKGROUND

Clinical trials are used to collect safety and efficacy data forpharmaceutical products. Management of clinical trials often entailsensuring that large quantities of documents are collected, reviewed,stored, and tracked, for example, in accordance with government agencyrequirements. Typically, documents are required from multiple entitiesthat are connected to a clinical trial, such as doctors, trial sponsors,and laboratories. Clinical trials occur over long periods of time, oftenseveral years, during which different phases of the trial occur. Foreach phase, different sets of documents may be required. Accuratemonitoring of the collection of required materials is crucial forensuring that a trial progresses in accordance with allocated time andresources.

SUMMARY

Without limiting the scope of the appended claims, after consideringthis disclosure, and particularly after considering the section entitled“Detailed Description,” one will understand how the aspects of variousembodiments are used to update a task component status.

In some embodiments, a method for updating a task component statusincludes displaying, on a display of an electronic device, a firstgraphical user interface that includes a first task completion controlthat includes: indicia of a first time range that corresponds to a firsttask, where the first task includes a first plurality of taskcomponents, indicia that correspond to at least one completed taskcomponent of the first plurality of task components, and indicia thatcorrespond to at least one uncompleted task component of the firstplurality of task components. The electronic device detects, at alocation that corresponds to the first task completion control, a firstinput. In response to detecting the first input, the device performs atleast one operation to change a status of a respective uncompleted taskcomponent of the first plurality of task components. The device updatesthe first graphical user interface using the changed status of therespective uncompleted task component.

In some embodiments, a system for updating a task component includes oneor more processors, memory, and one or more programs. The one or moreprograms are stored in the memory and configured to be executed by theone or more processors. The one or more programs include instructionsfor displaying, on a display of an electronic device, a first graphicaluser interface that includes a first task completion control thatincludes: indicia of a first time range that corresponds to a firsttask, where the first task includes a first plurality of taskcomponents, indicia that correspond to at least one completed taskcomponent of the first plurality of task components, and indicia thatcorrespond to at least one uncompleted task component of the firstplurality of task components. The one or more programs also includeinstructions for detecting, at a location that corresponds to the firsttask completion control, a first input. The one or more programsadditionally include instructions for performing at least one operationto change a status of a respective uncompleted task component of thefirst plurality of task components in response to detecting the firstinput. The one or more programs further include instructions forupdating the first graphical user interface using the changed status ofthe respective uncompleted task component.

In some embodiments, a computer readable storage medium stores one ormore programs. The one or more programs comprise instructions, whichwhen executed, cause a device to display, on a display of an electronicdevice, a first graphical user interface that includes a first taskcompletion control that includes: indicia of a first time range thatcorresponds to a first task, where the first task includes a firstplurality of task components, indicia that correspond to at least onecompleted task component of the first plurality of task components, andindicia that correspond to at least one uncompleted task component ofthe first plurality of task components. The one or more programs alsocomprise instructions that cause a device to detect, at a location thatcorresponds to the first task completion control, a first input. The oneor more programs additionally comprise instructions that cause a deviceto perform at least one operation to change a status of a respectiveuncompleted task component of the first plurality of task components inresponse to detecting the first input. The one or more programs furthercomprise instructions that cause a device to update the first graphicaluser interface using the changed status of the respective uncompletedtask component.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the present disclosure can be understood in greater detail, amore particular description may be had by reference to the features ofvarious embodiments, some of which are illustrated in the appendeddrawings. The appended drawings, however, merely illustrate pertinentfeatures of the present disclosure and are therefore not to beconsidered limiting, for the description may admit to other effectivefeatures.

FIG. 1 is a system diagram of a user device, in accordance with someembodiments.

FIG. 2 is a system diagram of a server, in accordance with someembodiments.

FIG. 3 illustrates a data structure of a project, in accordance withsome embodiments.

FIG. 4 illustrates a dashboard graphical user interface (GUI) of aproject management application, in accordance with some embodiments.

FIG. 5 is an enlarged view of a task completion user interface shown inFIG. 4.

FIGS. 6-11 illustrate a first approach for selecting a document asobject content for a selected object.

FIGS. 12-14 illustrate user input to change the status of an object from“uploaded and unreviewed” to “completed,” in accordance with someembodiments.

FIGS. 15-16 illustrate user input to display objects that correspond toa second task completion control, in accordance with some embodiments.

FIGS. 17-21 illustrate a drag-and-drop approach for selecting a documentas object content for a selected object, in accordance with someembodiments.

FIGS. 22-28 illustrate display and manipulation of task completionprojection information.

FIG. 29 illustrates a user directory application.

FIGS. 30A-30C are flow diagrams illustrating a method for updating atask component status.

In accordance with common practice, some of the drawings may not depictall of the components of a given system, method or device. Finally, likereference numerals may be used to denote like features throughout thespecification and figures.

DETAILED DESCRIPTION

Numerous details are described herein in order to provide a thoroughunderstanding of the example embodiments illustrated in the accompanyingdrawings. However, some embodiments may be practiced without many of thespecific details, and the scope of the claims is only limited by thosefeatures and aspects specifically recited in the claims. Furthermore,well-known processes, components, and materials have not been describedin exhaustive detail so as not to unnecessarily obscure pertinentaspects of the embodiments described herein.

The interactive project progress tracking interface as described hereindisplays, in a single interface, information for monitoring projectprogress and tools for entering project data. The interactive projectprogress tracking interface allows a user to interact directly withindicia of task progress to enter data related to a task. The indicia oftask progress are automatically updated as the user provides the projectdata. By combining a project progress tracking interface with projectcontent updating tools, the described interface creates a more efficientsystem for updating and reporting project data, reducing processingrequirements in comparison with systems that use separate platforms forproject tracking and content management.

FIG. 1 is a system diagram of user device 100, in accordance with someembodiments. User device 100 typically includes one or more processor(s)130, a memory 104, a power supply 132, an input/output (I/O) subsystem134, and a communication bus 140 for interconnecting these components.

Processor(s) 130 execute modules, programs and/or instructions stored inmemory 104 and thereby perform processing operations.

In some embodiments, the memory 104 stores one or more programs (e.g.,sets of instructions) and/or data structures, collectively referred toas “modules” herein. In some embodiments, memory 104, or thenon-transitory computer readable storage medium of memory 104 stores thefollowing programs, modules, and data structures, or a subset orsuperset thereof:

-   -   operating system 106;    -   project management application 108, which displays graphical        user interfaces and performs project operations as described        further with regard to FIGS. 4-28 below;    -   one or more projects 110 (e.g., project 110 a, project 110 b,        and project 110 n) that include information that can be viewed        and/or manipulated in project management application 108, as        describe further with regard to FIG. 3;    -   user directory application 112, which displays information about        project participants, as describer further with regard to FIG.        29.

The above identified modules (e.g., data structures, and/or programsincluding sets of instructions) need not be implemented as separatesoftware programs, procedures or modules, and thus various subsets ofthese modules may be combined or otherwise re-arranged in variousembodiments. In some embodiments, memory 104 stores a subset of themodules identified above. In some embodiments, remote user database 122and/or local user database 124 store one or more modules identifiedabove (e.g., projects 110). Furthermore, the memory 104 may storeadditional modules not described above. In some embodiments, the modulesstored in memory 104, or a non-transitory computer readable storagemedium of memory 104, provide instructions for implementing respectiveoperations in the methods described below. In some embodiments, some orall of these modules may be implemented with specialized hardwarecircuits that subsume part or all of the module functionality. One ormore of the above identified elements may be executed by one or more ofprocessor(s) 130. In some embodiments, one or more of the modulesdescribed with regard to memory 104 is implemented on memory 204 ofserver 200 (FIG. 2).

I/O subsystem 134 communicatively couples user device 100 to localdevices (e.g., user input device 136, output device 138, local userdatabase 124) and/or remote devices (e.g., devices accessed via acommunications network 120 (e.g., the Internet) via a wired and/orwireless connection). In some embodiments, a user input device 136and/or an output device 138 are integrated with device 100 (e.g., atouchscreen display). In some embodiments, user input device 136 and/oran output device 138 are peripheral devices communicatively connected touser device 100. In some embodiments, a user input device 136 includes akeyboard and/or a pointer device such as a mouse, touchpad, and/orstylus. In some embodiments, output device 138 includes, for example, adisplay and/or a speaker.

Communication bus 140 optionally includes circuitry (sometimes called achipset) that interconnects and controls communications between systemcomponents.

FIG. 2 is a system diagram of server 200, in accordance with someembodiments. Server 200 typically includes one or more processor(s) 230,a memory 204, a power supply 232, an input/output (I/O) subsystem 234,and a communication bus 236 for interconnecting these components.

Processor(s) 230 execute modules, programs and/or instructions stored inmemory 204 and thereby perform processing operations.

In some embodiments, the memory 204 stores one or more programs (e.g.,sets of instructions) and/or data structures, collectively referred toas “modules” herein. In some embodiments, memory 204, or thenon-transitory computer readable storage medium of memory 204 stores thefollowing programs, modules, and data structures, or a subset orsuperset thereof:

-   -   operating system 206;    -   user authentication module 208, which receives user        authentication information (e.g., identity information,        password, cryptographic key, and/or token) from a user device        100 (e.g., user device 100 a, user device 100 b, and/or user        device 100 n), performs user authentication using the received        information, and transmits authentication confirmation        information;    -   project management application distribution 210 (for example,        server 200 transmits information (e.g., application        instructions) for installation of project management application        108 on a user device 100, server 200 transmits information        (e.g., application instructions) for execution of project        management application 108 within another application (e.g., a        web browser application) executing on a user device 100, and/or        server 200 stores and/or executes instructions for project        management application 108 locally for access by a user device        100);    -   user directory application back end 212, which stores        information about project participants; and    -   one or more user profiles 214 (e.g., user profile 214 a, user        profile 214 b, and user profile 214 n) for project participants,        as described further with regard to FIG. 29.

The above identified modules (e.g., data structures, and/or programsincluding sets of instructions) need not be implemented as separatesoftware programs, procedures, or modules, and thus various subsets ofthese modules may be combined or otherwise re-arranged in variousembodiments. In some embodiments, memory 204 stores a subset of themodules identified above. In some embodiments, remote project database226 and/or local project database 224 stores one or more modulesidentified above (e.g., user profiles 214). Furthermore, the memory 204may store additional modules not described above. In some embodiments,the modules stored in memory 204, or a non-transitory computer readablestorage medium of memory 204, provide instructions for implementingrespective operations in the methods described below. In someembodiments, some or all of these modules may be implemented withspecialized hardware circuits that subsume part or all of the modulefunctionality. One or more of the above identified elements may beexecuted by one or more of processor(s) 230. In some embodiments, one ormore of the modules described with regard to memory 204 is implementedon memory 104 of user device 100 (e.g., user authentication is performedby user device 100).

I/O subsystem 234 communicatively couples user device 100 to localdevices and/or remote devices via a wired and/or wireless connection.

Communication bus 236 optionally includes circuitry (sometimes called achipset) that interconnects and controls communications between systemcomponents.

FIG. 3 illustrates a data structure of project 110, in accordance withsome embodiments. In some embodiments, a project 110 (e.g., project 110a) is stored in a data storage unit, such as local user database 124,remote user database 122, local project database 224, remote projectdatabase 226, memory 104, or memory 204. For example, project 110 a isstored in a table of a database. In some embodiments, one or moreobjects 302 (e.g., 302 a, 302 b, 302 c, 302 d, 302 e, 302 n) and/or oneor more tasks 300 (e.g., 300 a, 300 b, 300 n) are stored in a datastorage unit that stores a project 110 a. In some embodiments, anassociation (e.g., a link, such as a relationship in a relationaldatabase), is created between one or more objects 302 (e.g., objects 302a-302 n) and a project 110 (e.g., project 110 a). In some embodiments,an association is created between one or more tasks 302 (e.g., tasks 300a, 300 b, and 300 n) and a project 110 (e.g., project 110 a). In someembodiments, an association is created between one or more objects 302(e.g., object 302 a-302 c) and a task 300 (e.g., task 300 a). In theillustrative example of FIG. 3, tasks 300 a, 300 b, and 300 n have beendefined for project 110 a. Objects 302 a-302 c are associated with task300 a and objects 302 d-302 e are associated with task 300 b.

An object 302 includes object content 308, such as a content item (e.g.,a file, such as a document, image, video, and/or audio), a directory(e.g., a folder that contains one or more content items), anapplication, a link (e.g., a link to a website, content item, directory,and/or application) and/or a representation of a content item (e.g.,document placeholder).

In some embodiments, an object includes object metadata 304 (e.g.,document identifier, document type, study ID, content type,organization, person, date, signature, and/or object status thatcorrespond to the object).

In some embodiments, an object 302 includes an object status 306 (e.g.,“incomplete,” “uploaded and unreviewed,” and/or “complete”). Indescriptions of object status, the terms “intermediate-state” and“uploaded and unreviewed” are used interchangeably herein. Indescriptions of object status, the terms “incomplete” and “uncompleted”are used interchangeably herein. In descriptions of object status, theterms “complete” and “completed” are used interchangeably herein.

In an illustrative example, an object 302 a includes object content 308that is a placeholder (e.g., a placeholder that includes identifyinginformation) for a required document. When no document corresponding toobject 302 a has been uploaded, the object status 306 of object 302 a is“incomplete.” When a document corresponding to object 302 a has beenuploaded, object content 308 includes the uploaded document and objectstatus 306 of object 302 a is “uploaded and unreviewed.” In someembodiments, an uploaded document must be reviewed (e.g., by a systemadministrator). When the document is reviewed, an object status 306 ischanged from “uploaded and unreviewed” to “complete.”

Task 300 is, for example, a project milestone. In some embodiments, task300 includes a start date 310 and an end date 312. In some embodiments,start date 310 and/or end date 312 store user input date values. In someembodiments, start date 310 and/or end date 312 store calculated values(e.g., determined based on a current date, a number of objects 302 in atask 300, and/or based on productivity information for one or morepeople associated with a task.). For example, an end date 312 iscalculated as described with regard to FIGS. 24-28. In some embodiments,a user input date value is replaced with a calculated value, or viceversa.

In some embodiments, task 300 includes one more people (e.g., person 314a, person 314 b, person 314 c) who are responsible for a particular task(e.g., task 300 a). In some embodiments, a person 314 is a person, ateam of people and/or an entity. In some embodiments, a person 314 isassociated with a project 110 and/or an object 302 in lieu of or inaddition to being associated with a task 300. In some embodiments, task300 includes a historical productivity value 316 and/or a historicalefficiency value 318 for person 314. In some embodiments, a historicalproductivity value 316 and/or a historical efficiency value 318 forperson 314 are retrieved from a user profile 214. A historicalefficiency value 316 is, for example, a value indicating an ability of aperson 314 to complete task components of tasks 300 on time (e.g., priorto and/or on an end date 312). In some embodiments, a task 300 iscomplete when all objects 302 of task have object status 306 “complete.”A historical productivity value 318 is, for example, a number of objects302 that a user completes (e.g., when the user performs an action thatcauses object 302 to change from an “incomplete” object status 306 to a“complete” object status 306) in a defined time frame (e.g., betweenstart date 310 and end date 312) for a task 300.

In some embodiments, a start date 310 and an end date 312 for one ormore tasks 300 are automatically generated based on a number of taskcomponents (e.g., objects 302) of task 300 and productivity values forone or more users 314 of the task 300.

In an illustrative example, project 110 a is a clinical trial for apharmaceutical product, task 300 a corresponds to a first phase of theclinical trial and task 300 b corresponds to a second phase of theclinical trial. Objects 302 a, 302 b, and 302 c include placeholders fordocuments that must be collected during the first phase (e.g., task 300a). When a document corresponding to object 302 a is uploaded, object302 a includes the uploaded document as object content 308, and objectstatus 306 is changed from “incomplete” to “updated and unreviewed.”When review input has been received for the document corresponding toobject 302 a, object status 306 is changed from “updated and unreviewed”to “complete.”

FIG. 4 illustrates a dashboard graphical user interface (GUI) 400 of aproject management application 108, in accordance with some embodiments.Dashboard GUI 400 includes one or more project information gadgets, suchas task completion interface 402 (e.g., a “Documents by Milestone”gadget, described further with regard to FIG. 5), “Total Number ofDocuments by Study” gadget 404 (e.g., displaying a chart withinformation indicating numbers of objects 302 and/or object statuses 306corresponding to objects 302 of multiple projects 110), “RecentlyModified Documents” gadget 406 (e.g., displaying informationcorresponding to objects 302 for which an object status 306 has recentlychanged), “Required Documents” gadget 408 (e.g., displaying informationcorresponding to all objects required for a project), “Recently ModifiedWorkflows” gadget 410 (e.g., displaying information regarding changes toworkflow, such as a series of steps associated with completing a taskand/or completing an object requirement), and “Overdue Workflow” gadget412 (e.g., for a task 300 a with an end date 312 that is earlier thanthe current date, displaying information corresponding to objects 302with an object status 306 that has a value other than “completed”). Thegadgets 402-410 displayed in dashboard GUI 400 are user configurable.For example, gadget display manipulation controls 414 allow a user to,for example, expand a gadget, minimize a gadget, and/or detach a gadgetfrom its current displayed location. Additional gadget indicators 416are controls that, when selected, cause an additional gadget (e.g.,“Announcements,” “Events,” “Articles,” “Documents Growth over Time,”“Report Stream,” “Expired Documents,” “User Audit Trail,” “WorkflowStatus”) to be displayed in dashboard GUI 400.

FIG. 5 is an enlarged view of task completion user interface 402 (e.g.,“Documents by Milestone” gadget as shown in FIG. 4). Task completionuser interface 402 includes task completion controls 502, 504, and 506.Task completion control 502 corresponds to a first task 300 (e.g., task300 a), task completion control 504 corresponds to a second task 300(e.g., task 300 b), and task completion control 506 corresponds to athird task 300 (e.g., task 300 n). Task completion user interface 402includes identifying information 520 for task 300 a, identifyinginformation 522 for task 300 b, and identifying information 524 for task300 n.

A time range of task completion control 502 is indicated by a distancebetween the position of a start date 310 (as indicated by the left edge508 of task completion control 502) and an end date 312 (as indicated bythe right edge 510 of task completion control 502), for example,relative to date markers of time axis 512. A time range of taskcompletion control 504 is indicated by a distance between the positionof a start date 310 (as indicated by the left edge 530 of taskcompletion control 504) and an end date 312 (as indicated by the rightedge 532 of task completion control 504), for example, relative to datemarkers of time axis 512.

In some embodiments, a task completion control 502 represents a task(e.g., task 300 a) that has a number of associated objects 302 (e.g.,objects 302 a-302 c). In the illustrative example of FIG. 5, a number ofrequired objects 302 that correspond to task completion control 502 (andtask 302 a) is 27, as indicated by task status indicator 526.

Task status indicator 526 indicates that two out of the 27 (i.e.,“2/27”) required objects 302 for task 302 a have an object status 306 of“completed.” Task status indicator 526 also indicates that approximatelyseven percent (i.e., “7%”) of the required objects 302 for task 302 ahave an object status 306 of “completed.” A number of objects 302 withan object status 306 of “completed” is indicated by a first region 514of task completion control 502. For example, a width of first region 514(e.g., relative to a width of task completion control 502) illustrates anumber of objects 302 with an object status 306 of “completed.” As shownin FIG. 5, in some embodiments, identifying information 520, 522, and524 for tasks 302 also includes an indication of a number of requiredobjects 302 that correspond to task completion control 502, a number ofobjects 302 of a respective task 302 that have an object status 306 of“completed” and/or numbers of objects 302 of the respective task 302that have object statuses other than “completed.” For example,identifying information 520 for task 302 a includes the indication“Completed: 2, Required 27.”

Task completion control 502 includes a region 516 that indicates anumber of objects 302 with an object status 306 of “uploaded andunreviewed” and a region 518 that indicates a number of objects 302 withan object status 306 of “incomplete.”

In some embodiments, task completion user interface 402 includes anindication 528 of a current date relative to a time axis 512 (andrelative to task completion controls 502, 504 and 506).

In some embodiments, task completion user interface 402 includes asettings control 534 and a report generation control 536. In someembodiments, in response to input detected at a location correspondingto settings control 534, a scheduling interface is displayed. Thescheduling interface (not shown) receives user input to add a new task300, to edit an existing task 300 (e.g., to edit a start date 310associated with an existing task 300 and/or edit an end date 312associated with an existing task 300), and/or delete a task 300. In someembodiments, in response to input detected at a location correspondingto report generation control 536, a report generation wizard isdisplayed. The report generation wizard (not shown) receives user inputto define parameters for a report (e.g., to indicate current informationabout one or more tasks 300 associated with a project 110 and/orinformation about one or more objects 302 (e.g., object metadata 304,object status 306, and/or object content 308) associated with the one ormore tasks 300.

As described further below, because object content 508 can be providedfor objects 302 of a task 300 via user interaction with task completioncontrols 502, 504, and 506, information provided about the status oftask completion is current with the operations that have been performedto provide object content. For this reason, reports generate using areport generation wizard (and task progress projections as describedwith regard to FIGS. 22-28 below) are up to date with the most recentobject task completion activities.

Task completion user interface 402 includes a project selection control538 (e.g., a drop down menu control) for selecting a respective project110 from a plurality of projects 110 accessible to project managementapplication 108 (e.g., projects 110 stored by user device 100, localuser database 124, and/or remote user database 122).

FIGS. 6-11 illustrate a first approach for selecting a document asobject content 508 for a selected object 302, in accordance with someembodiments. When the document is selected as object content 508 for theselected object 302, the object status 306 of the selected objectchanges from “incomplete” to “uploaded and unreviewed.”

In FIG. 6, an input by user input device 136 is detected at a locationthat corresponds to task completion control 502. In some embodiments, aninput is a contact detected with a surface of a touchscreen at alocation that corresponds to task completion control 502. In someembodiments, an input is detected at a pointer device (e.g., a mouse)while a pointer icon (e.g., arrow 602) is at a location that correspondsto a displayed task completion control 502. In some embodiments, aninput received at a location in a user interface as described herein isa primary input (e.g., a left click input) unless described otherwise.

In response to detecting the input, task tracker interface 700 isdisplayed, as shown in FIG. 7.

In FIG. 7, task tracker interface 700 is displayed (e.g., overlayed overdashboard GUI 400). When task tracker interface 700 is displayed inresponse to input received at a location that corresponds to taskcompletion control 502, task tracker interface 700 displays objectinformation 702 for a plurality of objects 302 associated with taskcompletion control 502. In some embodiments, information 702 for arespective object 302 (e.g., object 302 a) includes an icon 704 thatcorresponds to an object status 306 of the respective object 302. Forexample, information 702 a corresponding to object 302 a includes anicon 704 a (e.g., including an exclamation point image) to indicate thatobject 302 a has a current object status 306 of “incomplete.” Icon 704 b(e.g., including an inbox image) is included in information 702 for arespective object 302 that has an object status of “uploaded andunreviewed.” Icon 704 c (e.g., including a checkmark image) is includedin information 702 for a respective object 302 with an object status 306of “completed.”

An input is detected at a location (e.g., as indicated by pointer icon706) that corresponds to information 702 a corresponding to object 302a. In response to detecting the input, object content upload interface800 is displayed, as shown in FIG. 8.

In FIG. 8, object upload interface 800 is displayed (e.g., overlayedover dashboard GUI 400 and/or task tracker interface 700). Objectcontent upload interface 800 includes controls for identifying objectcontent 308 for an object 302, such as a control 802 for displaying afile selection interface 900, a control 804 for displaying a userinterface (not shown) to receive input indicating a link (e.g., auniform resource locator (URL)), and/or a control 806 for displaying auser interface (not shown) for identifying object content 308 from amongpreviously uploaded object content. An input is detected at a location(e.g., as indicated by pointer icon 808) that corresponds to control 802for displaying file directory interface 900. In response to detectingthe input, file selection interface 900 is displayed, as shown in FIG.9.

In FIG. 9, file selection interface 900 is displayed (e.g., overlayedover dashboard GUI 400, task tracker interface 700, and/or object uploadinterface 800). File selection interface 900 includes navigationcontrols (e.g., a drop down file directory menu control 902, a control904 for navigating up one level in a directory, and/or a control 906 fornavigating to a specific directory location (e.g., a desktop)). Fileselection interface 900 displays one or more content items (e.g., files,such as document files). An input is detected at a location (e.g., asindicated by pointer icon 908) that corresponds to a representation of acontent item 910. In response to detecting the input, file selectionuser interface 900 ceases to be displayed, revealing underlying objectcontent upload interface 800 (as shown in FIG. 10), and content item 910is uploaded as object content 208 for the selected object 302 a (e.g.,the object 302 a corresponding to object information 704 a). In someembodiments, input provided at file selection user interface 900 is usedto select multiple content items as object content 208 of the for theselected object 302 a.

In FIG. 10, object upload interface 800 is displayed (after selection ofa content item 910 using file selection user interface 900). Objectupload interface 800 displays identifying information for content item910 in identifying information area 1002. Object upload interface 800displays a view of content item 910 in a content view region 1004.Displaying the identifying information for content item 910 and the viewof content item 910 enables a user to verify that the selected contentitem 910 is correct content for the selected object 302 a. If theselected content item 910 is not the correct content for the selectedobject 302 a, content item deletion control 1006 is provided fordeletion of one or more content items selected in object uploadinterface 800. Object upload interface 800 includes a metadata selectionregion 1008 with metadata input fields 1010 (“Document Type”), 1012(“Study ID”), 1014 (“Content Type”), 1016 (“Organization”), and 1018(“Person”), for designating object metadata 304 for the selected object302 a. In some embodiments, one or more fields are automaticallypopulated based on, for example, information for selected object 302 a(e.g., placeholder information), information about a person 314associated with a task 300 to which object 302 a belongs, informationabout a current user of project management application 108 (e.g., basedon user login information), and/or information from content item 910. Insome embodiments, metadata fields 1010-1018 include controls to receiveuser input for designating metadata 304 for selected object 302 a.

In some embodiments, information for object metadata 308 is obtainedfrom person information 314 of a task 300 and/or information stored in auser profile 214 (e.g., for a person 314 who is affiliated with aproject 110). For example, person field 1012 of object upload interface800 is populated with information from user profiles 214 of one or morepeople 314 connected to a project 110 (e.g., as determined from project110 and/or user profile 214). In some embodiments, person field 1012 ofobject upload interface 800 is populated with people 314 from a task 300(e.g., a task 300 that includes the object 302 to which the metadata 308pertains).

An input is detected at a location (e.g., as indicated by pointer icon1022) that corresponds to a control 1020 for completing the upload ofcontent item 910 as object content 308 of selected object 302 a. Inresponse to detecting the input, the object status 306 of selectedobject 302 a is adjusted from “incomplete” (as indicated by icon 704 ain FIG. 7) to “uploaded and unreviewed” (as indicated by icon 704 a inFIG. 11) and object upload interface 800 ceases to be displayed,revealing task tracker interface 700 (as shown in FIG. 11).

In FIG. 11, task tracker interface 700 is displayed (after completingthe upload of content item 910 using object upload interface 800). Aninput is detected at a location (e.g., as indicated by pointer icon1102) that corresponds to control 1104 for closing task trackerinterface 700. In response to detecting the input, task trackerinterface 700 ceases to be displayed, revealing dashboard GUI 400 (asshown in FIG. 12).

FIGS. 12-14 illustrate user input to change the object status 306 of anobject 302 from “uploaded and unreviewed” to “completed,” in accordancewith some embodiments.

In FIG. 12, dashboard GUI 400 is displayed (after the status of anobject 302 a of task 300 a corresponding to task completion control 502is updated from “incomplete” to “uploaded and unreviewed.” As a resultof the status change, the width of region 516 that indicates a number ofobjects 302 with an object status 306 of “uploaded and unreviewed” hasincreased (relative to the width of region 516 in FIG. 11) and the widthof region 518 that indicates a number of objects 302 with an objectstatus 306 of “incomplete” has decreased (relative to the width ofregion 518 in FIG. 21). The width of region 514 (e.g., relative to awidth of task completion control 502) that indicates a number of objects302 with an object status 306 of “completed” is unchanged. An input isdetected at a location (e.g., as indicated by pointer icon 1202) thatcorresponds to task completion control 502. In response to detecting theinput, task tracker interface 700 is displayed, as shown in FIG. 13.

In FIG. 13, task tracker interface 700 is displayed (e.g., overlayedover dashboard GUI 400). In task tracker interface 700, the objectstatus 306 indicated by icon 704 a (included in object information 702 athat corresponds to object 302 a) is “uploaded and unreviewed.” Inresponse to an input (e.g., a secondary input, such as a right clickinput) detected at a location (e.g., as indicated by pointer icon 1308)that corresponds to object information 702 a, a menu is displayedincluding control 1302 (“Move to Archive”) for indicating that review ofobject content 308 of object 302 a is complete, control 1304 (“OpenDocument Queue”) for viewing object content 308 of one or more objectswith an object status of “uploaded and unreviewed” and control 1306(“Open Document”) for viewing object content 308 of currently selectedobject 302 a. In response to an input to select control 1302 (e.g., byreleasing a right mouse button while pointer icon 1308 is hovering overcontrol 1302) the status of object 302 a is changed from “uploaded andunreviewed” to “complete.”

In FIG. 14, icon 704 a that corresponds to object information 702 aindicates the “complete” status of object 302 a. An input is received ata location (e.g., as indicated by pointer icon 1402) that corresponds tocontrol 1104 for closing task tracker interface 700. In response todetecting the input, task tracker interface 700 ceases to be displayed,revealing dashboard GUI 400 (as shown in FIG. 15).

FIGS. 15-16 illustrate user input to display objects that correspond toa second task completion control, in accordance with some embodiments.

In FIG. 15, dashboard GUI 400 is displayed (after the status of anobject 302 a is updated from “uploaded and unreviewed” to “complete.” Asa result of the status change, the width of region 514 that indicates anumber of objects 302 with an object status 306 of “complete” hasincreased and the width of region 514 that indicates a number of objects302 with an object status 306 of “uploaded and unreviewed” hasdecreased. Task status indicator 526 has changed from displaying “7%2/27” in FIG. 5 to displaying “11% 3/27” in FIG. 15, indicating that thenumber of completed objects 302 for task 302 a has increased. The widthof region 514 (e.g., relative to a width of task completion control 502)that indicates a number of objects 302 with an object status 306 of“completed” is unchanged.

An input is detected at a location (e.g., as indicated by pointer icon1502) that corresponds to task completion control 504. In response todetecting the input, task tracker interface 700 is displayed, as shownin FIG. 16.

In FIG. 16, task tracker interface 700 is displayed (e.g., after inputwas received at a location that corresponds to task completion control504). When task tracker interface 700 is displayed in response to inputreceived at a location that corresponds to task completion control 504,task tracker interface 700 includes a plurality of representations 1602of objects 302 associated with task completion control 504.Representations 1602 of objects 302 associated with task completioncontrol 504, as shown in FIG. 16, are distinct from representations 702of objects 302 associated with task completion control 502, as shown inFIG. 7.

An input is detected at a location (e.g., as indicated by pointer icon1604) that corresponds to a control 1104 for closing task trackerinterface 700. In response to detecting the input, task trackerinterface 700 ceases to be displayed, revealing dashboard GUI 400 (asshown in FIG. 17).

FIGS. 17-21 illustrate a drag-and-drop approach for selecting a documentas object content 508 for a selected object 302, in accordance with someembodiments. When the document is selected as object content 508 for theselected object 302, the object status 306 of the selected objectchanges from “incomplete” to “uploaded and unreviewed.”

In FIG. 17, a document 1702 has been selected (e.g., by input receivedat a location corresponding to an initial position of document 1702),and while the document 1702 is selected (“picked up”), the input dragsthe document from a first location, as indicated by pointer icon 1704 asshown in FIG. 17, to a second location, as indicated by pointer icon1704 as shown in FIG. 18. The second location of the document 1702corresponds to a location of task completion control 502. In response todetecting that document 1702 is dropped at the location that correspondsto task completion control 502, a quick upload interface 1900 isdisplayed, as shown in FIG. 19. A plurality of representations 1902 ofobjects 302 that correspond to task completion control 502 are displayedin quick upload interface 1900. In some embodiments, the plurality ofobjects 302 that correspond to task completion control 502 are filtered,for example, such that objects 302 with an “uploaded and unreviewed”object status 306 and/or objects 302 with a “completed” object status306 are filtered out and representations 1902 of objects 302 with an“incomplete” object status 306 are displayed in quick upload interface1900. In an illustrative example, the representations 1902 of objects302 include identifying information (e.g., object title, such as“Financial Disclosure Form”) for document placeholders.

In FIG. 19, an input is detected at a location (e.g., as indicated bypointer icon 1904) that corresponds to a representation 1902 a of anobject (e.g., object 302 b) of the the representations 1902 of objects302 that are displayed in quick upload interface 1900. In response todetecting the input, representation 1902 a object 302 b includes anindication that the respective object 302 b is checked.

In FIG. 20, an input is detected at a location (e.g., as indicated bypointer icon 2002) that corresponds to a control 2004 for uploading thedragged-and-dropped document 1702. In response to detecting the input,document 1702 is uploaded as object content 308, the status of object302 b is adjusted from “incomplete” to “uploaded and unreviewed,” andquick upload interface 1900 ceases to be displayed, revealing dashboardGUI 400, as shown in FIG. 21. In FIG. 21, the width of region 516 thatindicates a number of objects 302 with an object status 306 of “uploadedand unreviewed” has increased (relative to the width of task completioncontrol 502), and the width of region 518 that indicates a number ofobjects 302 with an object status 306 of “incomplete” has decreased(e.g., relative to the width of task completion control 502).

In some embodiments, after the upload of a dragged-and-dropped document1702 or other object 302 occurs (e.g., in response to input detected atcontrol 2004), a task tracking interface 700 is automatically displayed(e.g., to allow a user to review the recently uploaded object 302 withan object status 306 of “uploaded and unreviewed”). In some embodiments,after the upload of a dragged-and-dropped document 1702 or other object302 occurs, task tracking interface 700 is not displayed.

FIGS. 22-28 illustrate display and manipulation of task completionprojection information. In FIG. 22, an input is detected at a location(e.g., as indicated by pointer icon 2202) that corresponds to taskcompletion control 502. In response to detecting the input, task trackerinterface 700 is displayed, as shown in FIG. 23. In FIG. 23, an input isdetected at a location (e.g., as indicated by pointer icon 2302) thatcorresponds to milestone completion tab 2304 of task tracker interface700. In response to detecting the input, task completion projectioninterface 2400 is displayed, as shown in FIG. 24.

In FIG. 24, task completion projection interface 2400 is displayed(e.g., overlayed over dashboard GUI 400). Because the input to displaytask tracker interface 700 was received at task completion control 502,which corresponds to task 300 a, task completion project interface 2400includes information pertaining to completion of task 300 a. Informationpertaining to completion of task 300 a includes, for example, anestimated completion date 2406 of task 300 a, an estimated completiondate range 2418 (e.g., an area between an earliest estimated date asindicated by the line 2408 and latest estimated date as indicated by theline 2410), and/or information about the projected rate of progress 2412for task 300 a over time. In some embodiments, task completion projectinterface 2400 displays a current date as indicated by the line 2404.

In some embodiments, a projected rate of progress 2412 is determinedusing a linear regression analysis using the following equation:

x=ay*p+b

where x=time to complete a task component (e.g., time a person 314required to change an object status 306 of an object 302 from“incomplete” to “complete”), a=the regression slope coefficient, y=avalue representing an object 302 in a sequence of objects 302 requiredfor task 300 a, p is a productivity factor (e.g., of a person 314), andb is an x-axis intercept. In some embodiments, as described further withregard to FIG. 3, a projected rate of progress 2412 for a task 300 a isdetermined using one or more productivity factors (e.g., a historicalproductivity value 316 and/or a historical efficiency value 318) foreach person 314 included in task 300 a (FIG. 3). In some embodiments, aconfidence region 2420 between a plot of upper confidence limit values(indicated by line 2414) and lower confidence limit values (indicated byline 2416) is displayed.

In an illustrative example, person 314 a, person 314 b, and person 314 care associated with a task 300 a that includes 27 objects 302. An (x,y)pair is determined for y=1, 2, 3, . . . , 27 (corresponding to the 27objects 302) for person 314 a, person 314 b, and person 314 c. In thisway, a target progress rate and target end date are determined usingstored information about a number of objects 302 of a task 300 a, objectstatuses 306 of the objects 302, people 314 associated with task 300 a,and productivity information available for people 314. The targetprogress rate is shown as the projected rate of progress 2412 in FIGS.24-28.

In some embodiments, the projected rate of progress 2412 for task 300 ais a variable rate (as in the illustrative example of FIG. 24). Forexample, a projected rate of progress 2412 is a non-linear function(e.g., that takes into account days of the week on which work does notoccur and/or anticipated acceleration of work at the end or at otherpoints in the project). To account for non-linear functions, non-linearregression methods (as are known in the art) are used.

In some embodiments, a projected rate of progress 2412, estimatedcompletion date 2406, confidence region 2420, and/or estimatedcompletion date range 2418 are updated, for example, at a time that anobject status 308 of an object 302 is changed, at a time that taskcompletion project interface 2400 is accessed by a user, and/or on aperiodic basis.

In FIG. 24, an input is detected at a location (e.g., as indicated bypointer icon 2402) that corresponds to viewing a projection settingsuser interface 2500. In response to detecting the input, projectionsettings user interface 2500 is displayed (e.g., within task completionprojection interface 2400), as shown in FIG. 25.

In some embodiments, projection settings user interface 2500 includes ahistorical team productivity selection control 2504 for viewing and/orrecalculating a projected rate of progress 2412, estimated completiondate 2406, confidence region 2420, and/or estimated completion daterange 2418 based on historical team productivity 2504 for one or morepeople 314 (e.g., people 314 of a task 300 for which productivity datais being displayed).

In some embodiments, projection settings user interface 2500 includes afixed team productivity selection control 2505 for viewing and/orrecalculating a projected rate of progress 2412, estimated completiondate 2406, confidence region 2420, and/or estimated completion daterange 2418 based on a fixed productivity value. In some embodiments,projection settings user interface 2500 includes a productivity slidercontrol 2506 for adjusting a fixed productivity value used to viewand/or recalculate a projected rate of progress 2412, estimatedcompletion date 2406, confidence region 2420, and/or estimatedcompletion date range 2418. In some embodiments, the fixed teamproductivity value is used in lieu of historical user productivity data.

In some embodiments, projection settings user interface 2500 includes ahistorical team velocity trend control 2508 for viewing and/orrecalculating a projected rate of progress 2412, estimated completiondate 2406, confidence region 2420, and/or estimated completion daterange 2418 in accordance with historical trend data for one or morepeople 314 (e.g., people 314 of a task 300 for which productivity datais being displayed) and or one or more tasks 300.

In some embodiments, projection settings user interface 2500 includes aworking days selection control 2510 for viewing and/or recalculating aprojected rate of progress 2412, estimated completion date 2406,confidence region 2420, and/or estimated completion date range 2418 inaccordance with individually selectable designated working days.

An input is detected at a location (e.g., as indicated by pointer icon2502) that corresponds to team productivity selection control 2505. Inresponse to detecting the input, a a projected rate of progress 2412,estimated completion date 2406, confidence region 2420, and/or estimatedcompletion date range 2418 are determined using a fixed teamproductivity value (e.g., the value indicated by slider control 2506,110) as shown in FIG. 26.

In FIG. 26, an input is received that moves a slider handle 2512 alongslider control 2506 to change a productivity control value ofproductivity control slider 2506 from a first value (e.g., 110, asindicated in FIG. 25) to a second value (e.g., 185, as indicated in FIG.26). The position of pointer icon 2602 after dragging handle 2512 alongslider 2506 is shown in FIG. 26. In response to detecting the input, afixed team productivity value (corresponding to the value indicated byslider control 2506) is changed from 110 to 180, as shown in FIG. 26,causing projected rate of progress 2412, estimated completion date 2406,confidence region 2420, and/or estimated completion date range 2418 tobe recalculated.

In FIG. 27, an input is detected at a location (as indicated by positionicon 2702) that corresponds to historical team velocity trend control2508. In response to detecting the input, a historical team velocitycalculation occurs, causing projected rate of progress 2412, estimatedcompletion date 2406, confidence region 2420, and/or estimatedcompletion date range 2418 to be recalculated. The historical teamvelocity trend calculation uses values determined from analyzedcompleted tasks. For example, team productivity typically increases as adeadline approaches. In some embodiments, the calculation determines aset of one or more productivity values for one or more people 314 (orthe average across a team) over the course of a previously completedtask 300 and uses the productivity values to determine projected rate ofprogress 2412, estimated completion date 2406, confidence region 2420,and/or estimated completion date range 2418.

In FIG. 28, an input is detected at locations (as indicated by positionicon 2802) that correspond to working days selection control 2510. Inresponse to detecting input that has checked previously unchecked boxescorresponding to “Saturday” and “Sunday” (to cause these days to beconsidered working days), a projected rate of progress 2412, estimatedcompletion date 2406, confidence region 2420, and/or estimatedcompletion date range 2418 are determined and/or recalculated.

FIG. 29 illustrates a user directory application interface 2900 for auser directory application 112, in accordance with some embodiments.Typically, user directory application 112 is executed by a processor 130of user device 100 and user application 112 receives information (e.g.,project participant information) from a user directory application backend 212 that executes on a processor 230 of server 200. User directoryapplication interface 2900 displays, for example, information aboutproject participants (e.g., project participant Absar Q.) and/orinformation about connections between project participants. In someembodiments, user directory application interface 2009 includes one ormore controls to enable searching for project participants in accordancewith search criteria. Project participants are, for example, individualsand/or entities that perform tasks or have the potential to performtasks related to one or more projects (e.g., projects 110). In someembodiments, a user profile 214 for a person 314 (e.g., a user profile214 a for a person 314 a) includes general information 2904 (e.g., name,description, organizations, affiliations, therapeutic areas,customizable information (e.g., attachments), time zone, identifyinginformation in project management application 108, and/or contactinformation), project information 2906 (e.g., a list of one or moreprojects 110 with which a user has been involved), experienceinformation 2908 (e.g., employer, employment role, employment length,employment dates, employment features), and information 2910 about otherusers with which a user is connected.

In some embodiments, user profile information 214 includes productivitydata (e.g., a historical productivity value 316) and/or efficiency data(e.g., a historical efficiency value 318) for a person 314. In someembodiments, at least a portion of information in a user profile 214,such as productivity data and/or efficiency data, is not displayed inuser directory application interface 2900. In some embodiments,efficiency and/or productivity values stored in a respective userprofile 214 (e.g., user profile 214 a) are automatically updated inresponse to operations performed in project management application 108.For example, efficiency and/or productivity values for a person 314 areupdated each time a project 110 ends, at a time an object status 308 ofan object 302 is changed, at a time that information for a user 314 isaccessed by project management application 108, and/or on a periodicbasis. In some embodiments, a productivity value stored in a userprofile 214 is determined based on a historical productivity value 316and/or a historical efficiency value 318.

In some embodiments, a productivity value stored in a user profile 214,a historical productivity value 316 and/or a historical efficiency value318 are determined using one or more of the following factors: averageproductivity score across multiple people 314, such as an average acrossall stored user profiles 214 and/or average across all a filtered set ofstored user profiles 214 (e.g., filtered by team, by organization, by aperson's role, by an institution's role, and/or by country).

In some embodiments, a drag and drop operation as described with regardto FIGS. 17-21 is used to designate object content 308 of an object 302that is associated with a task for which data is displayed in taskcompletion projection interface 2400. For example, in response to aninput that drags a representation 1702 of a document over taskcompletion projection interface 2400 and that drops the document on taskcompletion projection interface 2400 (e.g., on the graph section of taskcompletion project interface 2400), a quick upload interface 1900 isdisplayed for uploading the document that corresponds to representation1702 as object content 308 of an object 302.

In some embodiments, in response to an input received at task completionprojection interface 2400 (e.g., on the graph section of task completionproject interface 2400), a task tracker interface 700 is displayed. Tasktracker interface 700 displays information associated with one or moreobjects that correspond to the task for which data is displayed in taskcompletion projection interface 2400. A user may then select objectcontent 308 for an object 302 using the interfaces and operationsdescribed with regard to FIGS. 6-12.

FIGS. 30A-30C are flow diagrams illustrating a method 3000 for updatinga tack component status, in accordance with some embodiments. The method3000 is performed at a device, such as user device 100 and/or server200. For example, instructions for performing the method 3000 are storedin the memory 104 (or a memory 204 of server device 200) and executed bythe processor(s) 130 of the user device 100 (or by processor(s) 230 ofserver 200).

The device displays (3002), on a display (e.g., output device 138) of anelectronic device (e.g., user device 100), a first graphical userinterface (e.g., dashboard GUI 400, task completion interface 402,and/or task completion projection interface 2400) that includes a firsttask completion control (e.g., task completion control 502, FIG. 5).

The first task completion control includes (3002 a) indicia of a firsttime range that corresponds to a first task (e.g., task 300 a, FIG. 3),where the first task includes a first plurality of task components(e.g., objects 302 a-302 c).

In some embodiments, a first time range is a length of time (e.g.,corresponding to a width of a task completion control 508) between afirst start date 310 (e.g., as indicated by the left edge 508 of taskcompletion control 502) and an first end date 312 (e.g., as indicated bythe right edge 510 of task completion control 502). In some embodiments,a first time range is a time period of, for example, minutes, hours,days, months, and/or years. In some embodiments, a task component is anobject 302 (e.g., a content item (e.g., a file, such as a document,image, video, and/or audio), a directory (e.g., a folder that containsone or more content items), an application, a link (e.g., a link to awebsite, content item, directory, and/or application) and/or arepresentation of a content item (e.g., document placeholder).

The first task completion control also includes (3002 b) indicia thatcorrespond to at least one completed task component of the firstplurality of task components. In some embodiments, indicia thatcorrespond to at least one completed task component of the firstplurality of task components include a representation of a number, forexample, a number, a dimension of a region and/or one or more icons. Forexample, a width of first region 514 (e.g., relative to a width of taskcompletion control 502, FIG. 5) indicates a number of completed taskcomponents of the plurality of task components associated with a task302. In another example, a number (e.g., the number 2 as shown at taskstatus indicator 526) displayed at a location that corresponds to alocation of task completion control 502 indicates a number of completedtask components of the plurality of task components associated with atask 302.

The first task completion control additionally includes (3002 c) indiciathat correspond to at least one uncompleted task component of the firstplurality of task components. For example, a width of a region 518(e.g., relative to a width of task completion control 502) indicates anumber of uncompleted task components (e.g., objects 302 with an objectstatus 306 of “incomplete”) of the plurality of task componentsassociated with a task 300.

In some embodiments, first graphical user interface (e.g., dashboard GUI400, FIG. 4 and/or a task completion interface 402, FIG. 5) includes(3004) a second task completion control (e.g., task completion control504, FIG. 5) that includes indicia of a second time range thatcorresponds to a second task (e.g., 300 b, FIG. 3), where the secondtask includes a second plurality of task components (e.g., objects 302 dand 302 e) that is distinct from the first plurality of task components(e.g., objects 302 a-302 c).

In some embodiments, in task completion user interface 402 (FIG. 5) atime range of task completion control 504 is indicated by a distancebetween the position of a start date 310 (as indicated by the left edge530 of task completion control 504,) and an end date 312 (as indicatedby the right edge 532 of task completion control 504).

In some embodiments, the first task completion control (e.g., taskcompletion projection interface 2400) includes (3006) indicia of aprojected rate of progress of the first task (e.g., task 300 a). Forexample, a first task completion projection control includes indicationsof rate of progress 2412, estimated completion date 2406, confidenceregion 2420, and/or estimated completion date range 2418 to berecalculated.

In some embodiments (3008), a first user (e.g., user 2900, FIG. 29) isassociated with the first task (e.g., task 300 a). The projected rate ofprogress of the first task is determined using productivity informationthat corresponds to the first user (e.g., a productivity value stored ina user profile 214, a historical productivity value 316, and/or ahistorical efficiency value 318). For example, a projected rate ofprogress 2412 is determined using productivity and/or efficiency valuesstored in a user profile 214 for a user 314 that corresponds to aproject 110, a task 300, an object 302 in object metadata 308.

The device detects (3010), at a location that corresponds to the firsttask completion control (e.g., task completion control 502), a firstinput (e.g., an input as described with regard to FIG. 6). In someembodiments, a location that corresponds to the first task completioncontrol 502 is a location within a perimeter of task completion control502. In some embodiments, a location that corresponds to the first taskcompletion control 502 includes an area outside of first task completioncontrol 502, such as an area within a predefined distance of theperimeter of first task completion control 502. In some embodiments,when an input is detected, the device determines a respective taskcompletion control of multiple task completion controls (e.g., 502, 504,506) to which a location at which an input was received is closest, andif the location at which the input was received is closest to taskcompletion control 502, then the input is determined to have beenreceived at a location that corresponds to the first task completioncontrol 502.

In some embodiments, the first input moves (3012) a representation of anobject (e.g., representation 1702 of a document) that corresponds to therespective uncompleted task component (e.g., a respective object 302) tothe location that corresponds to the first task completion control(e.g., task completion control 502). For example, the first input picksup a representation 1702 of a document from a source directory, dragsthe representation 1702 of the document from a first location (as shownin FIG. 17) to a second location (as shown in FIG. 18), and drops therepresentation 1702 of the document at a location that corresponds totask completion control 502.

In response to detecting the first input, the device performs (3014) atleast one operation to change a status (e.g., object status 306) of arespective uncompleted task component (e.g., object 302 a) of the firstplurality of task components (e.g., objects 302 a-302 c). The at leastone operation includes, for example, an operation to select content asobject content 308 of an object 302, an operation to review selectedcontent, an operation to confirm selected content as object content 308of an object 302, an operation to review object content 308 of an object302, and/or an operation to change the state of an object 302. Forexample, the at least one operation includes one or more of:

-   -   displaying a task tracker interface 700 (FIG. 7);    -   detecting input to select a representation 1702 of an object 302        in task tracker interface 700 (e.g., as described with regard to        FIG. 7);    -   displaying an object content upload interface 800 (FIG. 8);    -   detecting an input to display an object content selection        interface (e.g., file selection interface 900, FIG. 9);    -   detecting an input to select object content 308 as content for        an object 302 (e.g., as described with regard to FIG. 9;    -   detecting input at a location that corresponds to a control 1020        for completing the upload of content item 910 as object content        308 of a selected object 302 (e.g., as described with regard to        FIG. 10);    -   detecting an input to change a status of an object from an        intermediate object state 306 (“uploaded and unreviewed”) to a        “completed” object state 306 (e.g., as described with regard to        FIG. 13);    -   displaying a quick upload interface 1900 (FIG. 19);    -   detecting input at a location corresponding to a representation        1902 of an object 302 displayed is quick upload interface 1900        (e.g., as described with regard to FIG. 19); and    -   detecting input at a location that corresponds to a control 2004        for uploading content as object content 308 of an object 302        (e.g., as described with regard to FIG. 20).

In some embodiments, the at least one operation to change the status ofthe respective uncompleted task component (e.g., object 302 a) of thefirst plurality of task components (e.g., objects 302 a-302 c) includes(3016) displaying a second graphical user interface (e.g., task trackerinterface 700) that includes selectable object information 702 forselecting an uncompleted task component (e.g., object 302 a). Forexample, information 702 a for object 302 a as shown in FIG. 7 includesicon 704 a that indicates that object 302 a has an object status 306 of“uncompleted.”

In some embodiments, the device detects (3018) a second input at alocation that corresponds to the control (e.g., selectable objectinformation 702 a) for identifying the uncompleted task component (e.g.,object 302 a), and in response to detecting the second input at thelocation that corresponds to the control for identifying the uncompletedtask component, the device displays a third graphical user interface(e.g., object content upload interface 800 and/or file selectioninterface 900) that includes a control (e.g., control 802 for displayingfile directory interface 900, a file selection control of file directoryinterface 900 (such as a representation of content in file directoryinterface 900) and/or an “open” control of file directory interface 900)for selecting an object 302 that corresponds to the identifieduncompleted task component (e.g., 302 a).

In some embodiments, the device detects (3020) input at the control forselecting the object that corresponds to the identified uncompleted taskcomponent (e.g., selectable object information 702 a). In response todetecting the input at the control for selecting the object thatcorresponds to the identified uncompleted task component 302 (e.g.,control 802 for displaying file directory interface 900, a fileselection control of file directory interface 900 (such as arepresentation 910 of content in file directory interface 900) and/or an“open” control of file directory interface 900), the device adjusts astatus of the identified uncompleted task component from an uncompletedstatus (e.g., “incomplete”) to an intermediate-state status (e.g.,“uploaded and unreviewed”).

In some embodiments (3022), the second graphical user interface (e.g.,task tracker interface 700) includes a control (e.g., control 1302 “Moveto Archive”) for adjusting a status of an intermediate-state taskcomponent from an intermediate-state status (e.g., “uploaded andunreviewed”) to a completed status (e.g., as described with regard toFIG. 13). For example, when a task tracker interface 700 is displayed,an input, such as a right-click input, received at a location thatcorresponds to object information 702 a (with object status “uploadedand unreviewed,” as indicated by 704 a in FIG. 13) causes a menu to bedisplayed. The menu includes control 1302 (“Move to Archive”) forindicating that review of object content 308 of object 302 a iscomplete. An input received at control 1302 (e.g., by releasing theright click while pointer icon 1308 is hovering over control 1302)causes the status of object 302 a to chang from “uploaded andunreviewed” to “complete,” as indicated by icon 704 a in FIG. 14.

The device updates (3026) the first graphical user interface (e.g.,dashboard GUI 400, task completion interface 402, and/or task completionprojection interface 2400) using the changed status of the respectiveuncompleted task component. For example, when the status of object 302 achanges from “uncompleted” to “uploaded and unreviewed,” as describedwith regard to FIGS. 6-11, task completion control 502 of dashboard GUI400 is updated to adjust a size of region 516 that indicates a number ofobjects 302 that have an object status 306 of “uploaded and unreviewed,”and task completion control 502 is updated to adjust a size of region518 that indicates a number of objects 302 with an object status 306 of“incomplete,” as illustrated by the sizes of regions 516 and 518 in FIG.6 and in FIG. 12.

In some embodiments, updating the first graphical user interface (e.g.,dashboard GUI 400, task completion interface 402, and/or task completionprojection interface 2400) using the changed status of the respectiveuncompleted task component includes (3028) altering the indicia thatcorrespond to the at least one uncompleted task component of the firstplurality of task components. For example, when the status of object 302a changes from “uncompleted” to “uploaded and unreviewed,” as describedwith regard to FIGS. 6-11, task completion control 502 is updated toadjust a size of region 518 that indicates a number of objects 302 withan object status 306 of “incomplete,” as illustrated by the sizes ofregion 518 in FIG. 6 and in FIG. 12.

In some embodiments, altering the indicia that correspond to the atleast one uncompleted task component of the first plurality of taskcomponents includes (3030) at least one of: reducing (3030 a) a size ofindicia that correspond to the at least one uncompleted task component(e.g., reducing a size of region 518 of task completion control 502 thatindicates a number of objects 302 with an object status 306 of“incomplete,” as shown in FIG. 12), ceasing (3030 b) to display theindicia that correspond to the at least one uncompleted task component,or altering (3030 c) a representation of a rate of task completion.

In some embodiments, the first task completion control includes (3032)indicia that correspond to at least one intermediate-state taskcomponent (e.g., region 516 of task completion control 502 thatindicates a number of objects 302 with an object status 306 of “uploadedand unreviewed”).

In some embodiments, updating the first graphical user interface usingthe changed status of the respective uncompleted task component includes(3034) altering the indicia (e.g., region 516) that correspond to the atleast one intermediate-state (e.g., “uploaded and unreviewed”) taskcomponent of the first plurality of task components. In someembodiments, altering the indicia (e.g., region 516) that correspond tothe at least one intermediate-state task component of the firstplurality of task components includes (3036) increasing a size of theindicia that correspond to the at least one intermediate-state taskcomponent. For example, from FIG. 6 to FIG. 12, a width of region 516 oftask completion control 502 (that indicates a number of objects 302 withan object status 306 of “uploaded and unreviewed”) expands.

It will be recognized that the interactive project tracking interfacedescribed herein could be used for managing a variety of types ofprojects, such as document tracking for managing documents processed ina legal practice, healthcare practice, construction management,archiving service or other industry that has stringent record keepingrequirements and/or involves review and/or collection of largequantities of documents or other content.

Features of the present invention can be implemented in, using, or withthe assistance of a computer program product, such as a storage medium(media) or computer readable storage medium (media) having instructionsstored thereon/in which can be used to program a processing system toperform any of the features presented herein. The storage medium (e.g.,memory 104, 204) can include, but is not limited to, high-speed randomaccess memory, such as DRAM, SRAM, DDR RAM or other random access solidstate memory devices, and may include non-volatile memory, such as oneor more magnetic disk storage devices, optical disk storage devices,flash memory devices, or other non-volatile solid state storage devices.Memory 104, 204 optionally includes one or more storage devices remotelylocated from the CPU(s) 130, 230. Memory 104, 204, or alternatively thenon-volatile memory device(s) within memory 104, 204, comprises anon-transitory computer readable storage medium.

Stored on any one of the machine readable medium (media), features ofthe present invention can be incorporated in software and/or firmwarefor controlling the hardware of a processing system, and for enabling aprocessing system to interact with other mechanism utilizing the resultsof the present invention. Such software or firmware may include, but isnot limited to, application code, device drivers, operating systems, andexecution environments/containers.

Communication systems as referred to herein (e.g., communication system134, 234) optionally communicate via wired and/or wireless communicationconnections. Communication systems optionally communicate with networks,such as the Internet, also referred to as the World Wide Web (WWW), anintranet and/or a wireless network, such as a cellular telephonenetwork, a wireless local area network (LAN) and/or a metropolitan areanetwork (MAN), and other devices by wireless communication. Wirelesscommunication connections optionally use any of a plurality ofcommunications standards, protocols and technologies, including but notlimited to Global System for Mobile Communications (GSM), Enhanced DataGSM Environment (EDGE), high-speed downlink packet access (HSDPA),high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO),HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), long term evolution (LTE), nearfield communication (NFC), wideband code division multiple access(W-CDMA), code division multiple access (CDMA), time division multipleaccess (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (e.g., IEEE 102.11a,IEEE 102.11ac, IEEE 102.11ax, IEEE 102.11b, IEEE 102.11g and/or IEEE102.11n), voice over Internet Protocol (VoIP), Wi-MAX, a protocol fore-mail (e.g., Internet message access protocol (IMAP) and/or post officeprotocol (POP)), instant messaging (e.g., extensible messaging andpresence protocol (XMPP), Session Initiation Protocol for InstantMessaging and Presence Leveraging Extensions (SIMPLE), Instant Messagingand Presence Service (IMPS)), and/or Short Message Service (SMS), or anyother suitable communication protocol, including communication protocolsnot yet developed as of the filing date of this document.

It will be understood that, although the terms “first,” “second,” etc.may be used herein to describe various elements, these elements shouldnot be limited by these terms. These terms are only used to distinguishone element from another.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the claims. Asused in the description of the embodiments and the appended claims, thesingular forms “a,” “an” and “the” are intended to include the pluralforms as well, unless the context clearly indicates otherwise. It willalso be understood that the term “and/or” as used herein refers to andencompasses any and all possible combinations of one or more of theassociated listed items. It will be further understood that the terms“comprises” and/or “comprising,” when used in this specification,specify the presence of stated features, integers, steps, operations,elements, and/or components, but do not preclude the presence oraddition of one or more other features, integers, steps, operations,elements, components, and/or groups thereof

As used herein, the term “if” may be construed to mean “when” or “upon”or “in response to determining” or “in accordance with a determination”or “in response to detecting,” that a stated condition precedent istrue, depending on the context. Similarly, the phrase “if it isdetermined [that a stated condition precedent is true]” or “if [a statedcondition precedent is true]” or “when [a stated condition precedent istrue]” may be construed to mean “upon determining” or “in response todetermining” or “in accordance with a determination” or “upon detecting”or “in response to detecting” that the stated condition precedent istrue, depending on the context.

The foregoing description, for purpose of explanation, has beendescribed with reference to specific embodiments. However, theillustrative discussions above are not intended to be exhaustive or tolimit the claims to the precise forms disclosed. Many modifications andvariations are possible in view of the above teachings. The embodimentswere chosen and described in order to best explain principles ofoperation and practical applications, to thereby enable others skilledin the art.

What is claimed is:
 1. A method for updating a task component status,including: displaying, on a display of an electronic device, a firstgraphical user interface that includes a first task completion controlthat includes: indicia of a first time range that corresponds to a firsttask, wherein the first task includes a first plurality of taskcomponents, indicia that correspond to at least one completed taskcomponent of the first plurality of task components, and indicia thatcorrespond to at least one uncompleted task component of the firstplurality of task components; detecting, at a location that correspondsto the first task completion control, a first input; in response todetecting the first input, performing at least one operation to change astatus of a respective uncompleted task component of the first pluralityof task components; and updating the first graphical user interfaceusing the changed status of the respective uncompleted task component.2. The method of claim 1, wherein the at least one operation to changethe status of the respective uncompleted task component of the firstplurality of task components includes displaying a second graphical userinterface that includes a control for identifying an uncompleted taskcomponent.
 3. The method of claim 2, including: detecting a second inputat a location that corresponds to the control for identifying theuncompleted task component; and in response to detecting the secondinput at the location that corresponds to the control for identifyingthe uncompleted task component, displaying a third graphical userinterface that includes a control for selecting an object thatcorresponds to the identified uncompleted task component.
 4. The methodof claim 3 including: detecting input at the control for selecting theobject that corresponds to the identified uncompleted task component;and in response to detecting the input at the control for selecting theobject that corresponds to the identified uncompleted task component,adjusting a status of the identified uncompleted task component from anuncompleted status to an intermediate-state status.
 5. The method ofclaim 2, wherein the second graphical user interface includes a controlfor adjusting a status of an intermediate-state task component from anintermediate-state status to a completed status.
 6. The method of claim1, wherein the first input moves a representation of an object thatcorresponds to the respective uncompleted task component to the locationthat corresponds to the first task completion control.
 7. The method ofclaim 1, wherein updating the first graphical user interface using thechanged status of the respective uncompleted task component includesaltering the indicia that correspond to the at least one uncompletedtask component of the first plurality of task components.
 8. The methodof claim 7, wherein altering the indicia that correspond to the at leastone uncompleted task component of the first plurality of task componentsincludes at least one of: reducing a size of indicia that correspond tothe at least one uncompleted task component, ceasing to display theindicia that correspond to the at least one uncompleted task component,or altering a representation of a rate of task completion.
 9. The methodof claim 1, wherein the first task completion control includes indiciathat correspond to at least one intermediate-state task component. 10.The method of claim 9, wherein updating the first graphical userinterface using the changed status of the respective uncompleted taskcomponent includes altering the indicia that correspond to the at leastone intermediate-state task component of the first plurality of taskcomponents.
 11. The method of claim 9, wherein altering the indicia thatcorrespond to the at least one intermediate-state task component of thefirst plurality of task components includes increasing a size of theindicia that correspond to the at least one intermediate-state taskcomponent.
 12. The method of claim 1, wherein the first graphical userinterface includes a second task completion control that includesindicia of a second time range that corresponds to a second task,wherein the second task includes a second plurality of task componentsthat is distinct from the first plurality of task components.
 13. Themethod of claim 1, wherein the first task completion control includesindicia of a projected rate of progress of the first task.
 14. Themethod of claim 13, wherein: a first user is associated with the firsttask; and the projected rate of progress of the first task is determinedusing productivity information that corresponds to the first user.
 15. Asystem for updating a task component status, the system comprising: oneor more processors; memory; and one or more programs, wherein the one ormore programs are stored in the memory and are configured to be executedby the one or more processors, the one or more programs includinginstructions for: displaying, on a display of an electronic device, afirst graphical user interface that includes a first task completioncontrol that includes: indicia of a first time range that corresponds toa first task, wherein the first task includes a first plurality of taskcomponents, indicia that correspond to at least one completed taskcomponent of the first plurality of task components, and indicia thatcorrespond to at least one uncompleted task component of the firstplurality of task components; detecting, at a location that correspondsto the first task completion control, a first input; in response todetecting the first input, performing at least one operation to change astatus of a respective uncompleted task component of the first pluralityof task components; and updating the first graphical user interfaceusing the changed status of the respective uncompleted task component.16. The system of claim 15, wherein the first input moves arepresentation of an object that corresponds to the respectiveuncompleted task component to the location that corresponds to the firsttask completion control.
 17. The system of claim 15, wherein updatingthe first graphical user interface using the changed status of therespective uncompleted task component includes altering the indicia thatcorrespond to the at least one uncompleted task component of the firstplurality of task components.
 18. The system of claim 15, wherein thefirst graphical user interface includes a second task completion controlthat includes indicia of a second time range that corresponds to asecond task, wherein the second task includes a second plurality of taskcomponents that is distinct from the first plurality of task components.19. The system of claim 15, wherein the first task completion controlincludes indicia of a projected rate of progress of the first task. 20.A computer readable storage medium storing one or more programs, the oneor more programs comprising instructions, which when executed, cause adevice to: display, on a display of an electronic device, a firstgraphical user interface that includes a first task completion controlthat includes: indicia of a first time range that corresponds to a firsttask, wherein the first task includes a first plurality of taskcomponents, indicia that correspond to at least one completed taskcomponent of the first plurality of task components, and indicia thatcorrespond to at least one uncompleted task component of the firstplurality of task components; detect, at a location that corresponds tothe first task completion control, a first input; in response todetecting the first input, perform at least one operation to change astatus of a respective uncompleted task component of the first pluralityof task components; and update the first graphical user interface usingthe changed status of the respective uncompleted task component.